편집 권한이 부족합니다. 로그인된 사용자(이)여야 합니다. 해당 문서의 ACL 탭을 확인하시기 바랍니다.
현재 진행 중인 사용자 토론이 있습니다.
분류
1. 개요[편집]
2. 추가 예정인 기능[편집]
- 리다이렉트 문법 변경: 리다이렉트의 대상이 되는 문서에서 '[[넘겨주기:리다이렉트]]'꼴로 리다이렉트를 설정할 수 있도록 리다이렉트 문법을 변경하는 내용이다.[2]
- 사용자 문서의 하위문서 관련: 사용자 문서의 하위 문서가 최상위 문서로 옮겨지면 삭제하거나 옮기는 것이 불가능해지는데 이를 가능하게 해달라는 요청이다.
3. 권한[편집]
4. 문제점[편집]
4.1. 모바일에서의 문제점[편집]
5. 기타[편집]
- 기본적으로 비공개 엔진이기 때문에 일반인들이 구할 수 없다. 대체용으로 나온 게 오픈나무.
- 4.12.0 이하 버전은 HTML과 자바스크립트를 알아보기 쉬웠는데, 현재는 페이지들의 HTML을 열어보면 data-v-(해시) 등의 속성으로 요소들을 구분하게 되어있어 일반적으로 알아보기 어렵게 되어있다.[3] 또한 자바스크립트도 전부 난독화되어있어 변수 및 함수 이름들이 16진수 숫자로 되어있고, 작동하지 않는 코드들이 삽입되어있고, 문자열도 인코딩되어있어 알아보기 매우 어렵게 되어있다. 거기에 더해서 모든 문자열들을 한 배열에 모아놓고 함수를 통해서 배열에 접근하는 등 매우 복잡하게 되어있다.
- 4.13.0부터 내부 구조가 대거 수정되었다. 4.15.0까지는 기존 방식의 스킨과의 호환성을 위해 해당 스킨을 적용하면 옛 인터페이스를 사용할 수 있었다. 나무위키는 2019년 말쯤에 4.16.0으로 업데이트되어 기존 레이아웃을 사용할 수 없었으나 더시드위키는 업데이트되지 않아 거기서 계속 사용할 수 있었다. 그러다가 2020년 3월 1일에 더시드위키도 4.16.0으로 업데이트되어서 기존 방식과 인터페이스는 더 이상 볼 수 없게 되었다.
- 리버티 스킨 기준으로 신 프론트엔드(버전 4.16.0) 이후로 스크립트의 총 크기가 거의 1MB[4]씩 되어서 모바일에서 데이터 네트워크를 사용하여 접속하는 경우 주의가 필요하다. 다만 지금은 크기가 좀 줄긴 했다.
- 2021년 1월 20일 부로 포럼이 리뉴얼되었다.
- Date 오브젝트를 그대로 대입해서인지 차단되었을 때 나오는 오류 메시지의 만료일의 형식이 "Sat Dec 27 2132 04:42:20 GMT+0900 (대한민국 표준시)"이고, 앞부분이 영어로 나온다.
- 2020년 중후반에 자동 로그인 후 로그아웃이 되지 않는 오류가 있었다. honoka 쿠키의 반환이 제대로 안 되어서 그런데, 값이 "[object Object]"로 잘못 반환되었다. 쿠키를 JSON(오브젝트)으로 관리하는 듯하다.[5]
- 기여 목록의 특성으로 미루어 보아 내부적으로 초 단위 유닉스 시간을 통해 관리하는 듯하다.
- 이전에는 Tor 네트워크 위에서 "더시드"라는 이름의 딥 웹 위키를 namu가 운영했다. 주소는 .com이나 .wiki가 아니라 .onion으로 끝난다.
- 엔진 수정권을 주지 않았음에도 나무위키에만 있는 기능이 있는 것으로 보아 플러그인이나 확장 프로그램 기능이 있는 듯하다.
- 엔진 내부 API는 암호화되어 있다. 아래 코드를 통해 요청을 위조하면 아래와 같은 결과가 나온다. (헤더 값은 2022/9/8 기준)
나무위키 기준으로 테스트되었다. 궁금하면 개발자 도구 콘솔창에 헤더값을 최신으로 변경하고 넣어보자.
코드 :const request=new XMLHttpRequest();
request.open('GET','i/p31G64YK67O5Sp8AE71TE4I5cJiNheF3UCsU5-VTieb',true);
request.setRequestHeader('x-chika','2013d3f8f8c7b5598');
request.setRequestHeader('x-namuwiki-nonce','zStFHBzm88MnOdE1SkTNvA==');
request.setRequestHeader('x-riko','1fc95018783ef8be685241012a6efd64');
request.setRequestHeader('x-you','af3f5c4a4f54a47f42eda8c501fd03a5');
request.send();
request.onload=()=>{
console.log(request.status);
console.log(request.response);
}
결과 :٫�Ht����K��� B<�m'�'P����W����E�� q_�eg��K�R�
~��
�L��Z|"35�ϲ���T�%>��O>/ܠ!|팡n4��W�V%f��?�W���OX�fi��_��^���.7�Ih�K�|���Ij�|�5���[�,wHHֶ
�~�dl�R5��(7��W���'��O�t%�U��b���^�CV�:3?�Jљ�E���ہ�(�6�T��r�m?�=� ��@KrJ������W�mbt�굳이 AJAX로 한건 코딩 실력이 딸려서 그런 것 이므로 더 효율적인 것이 있으면 추가 바람